//
//  IFlySpeechPlusSDKTTS.h
//  IFlySpeechPlusSDK
//
//  Created by 张剑 on 14/12/18.
//  Copyright (c) 2014年 iflytek. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "IFlySpeechPlusSDKBusiness.h"



/*!
 *  语记合成接口
 */
@interface IFlySpeechPlusSDKTTS : NSObject


#pragma mark - Interfaces
/*!
 *  从语记获取更多发音人
 *  @return 如果支持SDK版本的语记已安装，则跳转到语记，返回YES；否则返回NO；
 */
+(BOOL)moreVcnFromVoiceNote;

/*!
 *  获取默认本地发音人
 *
 *  数组中的本地发音人是一个包含name(发音人参数，用于设置)和
 *  nickname(发音人昵称，用于界面显示)字段的NSDictionary
 *
 *  @return 默认发音人数组
 */
+(NSArray*)defaultVcnList;

/*!
 *  获取来自语记的本地发音人
 *
 *  数组中的本地发音人是一个包含name(发音人参数，用于设置)和
 *  nickname(发音人昵称，用于界面显示)字段的NSDictionary
 *
 *  @return 来自语记的本地的发音人数组
 */
+(NSArray*)voiceNoteVcnList;

/*!
 *  获取所有本地发音人
 *  本地发音人的来源包括：默认发音人、语记发音人
 *
 *  数组中的本地发音人是一个包含name(发音人参数，用于设置)和
 *  nickname(发音人昵称，用于界面显示)字段的NSDictionary
 *
 *  @return 本地的发音人数组
 */
+(NSArray*)localVcnList;

/*!
 *  清空从语记获得的本地发音人资源
 *  该操作会清除从语记获得的本地发音人资源
 *
 *  @return 成功返回YES；否则返回NO；
 */
+(BOOL)clearVoiceNoteLocalVcns;

/**
 *  获取指定本地发音人的资源路径
 *  路径为MSC要求的格式化路径，包含common和具体发音人
 *  优先返回从语记获得的本地发音人资源路径
 *
 *  @param vcn 发音人名字
 *
 *  @return 资源路径
 */
+ (NSString *)resPathForVcn:(NSString *)vcn;


/**
 *  功能描述
 *  检验从语记获得的发音人资源的有效性
 *
 *  @return 资源正常返回YES；否则返回NO
 */
+(BOOL) checkVoiceNoteVcnRes;

/**
 *  功能描述
 *  检验默认的发音人资源的有效性
 *
 *  @return 资源正常返回YES；否则返回NO
 */
+(BOOL) checkDefaultVcnRes;


#pragma mark -
/** 
 *  返回识别对象的单例
 */
+ (instancetype) sharedInstance;

/** 
 *  销毁识别对象的单例
 */
+ (void) purgeSharedInstance;


/** 
 *  设置委托对象
 */
@property(nonatomic,assign) id<IFlySpeechPlusSDKBusinessDelegate> delegate ;

@end
